package org.shj.tdpl.loader.loader;

/**
 *
 * @author ShenHuangJian
 * @date 2018年6月28日
 */
public interface DataLoader {
	
	/**
	 * If some other versions (may be prepared by other staff) are also needed for the test 
	 * case, they can be added as the parameter. E.g. The test case needs data version 100 and 200, if the data in version 200 depends on
	 * the data in version 100 (e.g. foreign key constraint), this method will be invoked as loadDataByVersion(200, 100);
	 *                 
	 * @param versions The first version is the main data version. 
	 */
	void loadDataByVersion(int... versions);

	/**
	 * Do some clean job after each test case.
	 * So this method should be invoked after each test case finished.
	 */
	void clean();
}
